package com.itheima.tliasmanagementspringboot.service;

import com.itheima.tliasmanagementspringboot.common.PageBean;
import com.itheima.tliasmanagementspringboot.dtos.StudentPageDto;
import com.itheima.tliasmanagementspringboot.pojo.Student;

import java.util.List;
import java.util.Map;

public interface StudentService {
    /**
     * 功能:查询全部学员信息
     * @return 查询到的信息的集合
     */
    List<Student> queryAllStudentService();

    /**
     * 功能: 根据id查询学员信息
     * @return 查询到的学员信息的
     *
     *
     */
    Student queryStudentByConditionService(Integer id);



    /**
     * 功能: 根据id查删除学员信息
     *
     */
    void deleteStudentByIds(Integer[] ids);

    /**
     * 功能: 添加/插入一条学员信息
     *
     * @param student
     */
    void insertStudentService(Student student);

    /**
     * 功能:根据id更新学员信息
     * @param student :学员id
     *
     */
    void updateStudentByIdService(Student student);

    /**
     *
     * @param studentPageDto 请求参数
     * @return 返回的是封装后的查询到的数据集合和总条数的对象
     */
    PageBean<Student> pageQueryStudentService(StudentPageDto studentPageDto);

    void violationHandlerService(Integer id, Integer score);

    Map<String, List<Object>> queryCountGroupByClazzService();
}
